001 /**
002 * Created by IntelliJ IDEA.
003 * User: Wei Wang
004 * Date: Apr 1, 2003
005 * Time: 9:59:07 PM
006 */
007
008 package EVolve.util.settings;
009
010 import EVolve.Scene;
011 import javax.swing.*;
012 import java.io.*;
013
014 public class PhaseDetectorSetting extends Setting{
015 private static PhaseDetectorSetting instance;
016
017 public static PhaseDetectorSetting v() {
018 if (instance == null)
019 instance = new PhaseDetectorSetting();
020 return instance;
021 }
022
023 public void save(String tags[], JTextField contents[], String filename) {
024 this.contents = contents;
025 this.tags = tags;
026 iniFilename = getFilenameWithPath(filename);
027 save();
028 }
029
030 public void readDataFromFile(String tags[], JTextField[] contents, String filename) {
031 String line;
032 RandomAccessFile iniFile;
033 File file = new File(getFilenameWithPath(filename));
034 if (!file.exists()) return;
035
036 try {
037 iniFile = new RandomAccessFile(file,"r");
038 for (int i=0; i<tags.length; i++) {
039 line = iniFile.readLine(); //skip tag
040 line = iniFile.readLine();
041 contents[i].setText(line.trim());
042 }
043 } catch (IOException e) {
044 Scene.showErrorMessage("Unable to read setting file \""+iniFilename+"\", or" +
045 "the file is corrupted.");
046 return;
047 } catch (NumberFormatException e) {
048 Scene.showErrorMessage("Format of \""+iniFilename+"\" is incorrect.");
049 return;
050 }
051
052 }
053
054 }